package com.ad.platform.model;

import com.ad.platform.model.base.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * <p>
 * 订单表
 * </p>
 *
 * @author rclia
 * @since 2021-04-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="PreOrder对象", description="订单表")
public class PreOrder extends BaseModel implements Serializable {

    private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "用户id")
    private Integer userId;

    @ApiModelProperty(value = "商家id")
    private Integer merchantId;

    @ApiModelProperty(value = "实付金额,精确到两位")
    private BigDecimal payment;

    @ApiModelProperty(value = "支付方式(0在线支付 1货到付款)")
    private Integer paymentType;

    @ApiModelProperty(value = "配送费(邮费), 精确到两位")
    private BigDecimal postPay;

    @ApiModelProperty(value = "0未付款 1已付款,商家未接单, 2商家已接单, 3已发货, 4订单完成 | 5已留房 6退订申请中 7已退订")
    private Integer status;

    @ApiModelProperty(value = "订单付款时间")
    private LocalDateTime payTime;

    @ApiModelProperty(value = "发货时间")
    private LocalDateTime consignTime;

    @ApiModelProperty(value = "交易完成时间")
    private LocalDateTime endTime;

    @ApiModelProperty(value = "交易结束时间")
    private LocalDateTime closeTime;

    @ApiModelProperty(value = "买家留言")
    private String buyerMsg;

    @ApiModelProperty(value = "买家昵称")
    private String buyerNick;

    @ApiModelProperty(value = "买家是否已评价（商家是否已回复 0否 1是）")
    private Integer buyerRate;

    @ApiModelProperty(value = "订单id")
    private String orderId;

    @ApiModelProperty(value = "所购商品 ")
    private String orderDesc;

    @ApiModelProperty(value = "餐桌信息")
    private String deskDesc;

    @ApiModelProperty(value = "预约时间")
    private String timeDesc;

    @ApiModelProperty(value = "备注")
    private String mark;

    @ApiModelProperty(value = "0餐饮1酒店2景点3车服4加油5特产6超市")
    private Integer queryType;

    @ApiModelProperty(value = "手机号")
    private String phone;

    @ApiModelProperty(value = "下单用户称呼")
    private String orderUser;

    @ApiModelProperty(value = "显示用订单id")
    private String showOrderNo;

    @ApiModelProperty(value = "饮食类餐桌消耗json")
    private String consumeNumItem;

    @ApiModelProperty(value = "酒店类房间消耗json")
    private String consumeNumHotel;

    @ApiModelProperty(value = "景点类门票消耗json")
    private String consumeNumScenic;

    @ApiModelProperty(value = "订单类型(PICK_UP预约自提单;TAKE_OUT外卖单;IN_HALL即时堂食单;SUBSCRIBE_IN_HALL预约堂食单)")
    private String orderType;

    @ApiModelProperty(value = "餐桌号码(即时堂食单时候输入)")
    private String deskNo;

    @ApiModelProperty(value = "就餐人数")
    private Integer peopleNum;

    @ApiModelProperty(value = "配送时间")
    private String sendTime;

    @ApiModelProperty(value = "入住日期字符 2020-09-19")
    private String hotelInTime;

    @ApiModelProperty(value = "预约码(六位数随机数)")
    private String preNum;

    @ApiModelProperty(value = "预约餐桌服务类型(1点餐   0点台")
    private Integer hallPreType;

    @ApiModelProperty(value = "纬度")
    private String latitude;

    @ApiModelProperty(value = "经度")
    private String longitude;

    @ApiModelProperty(value = "联系人地址")
    private String address;

    @ApiModelProperty(value = "是否接龙订单")
    private String isJielong;

    @ApiModelProperty(value = "接龙时间区段-开始时间")
    private LocalDateTime jielongStarttime;

    @ApiModelProperty(value = "接龙时间区段-结束时间")
    private LocalDateTime jielongEndtime;

}
